﻿using System.Drawing;
using DimensionsHelper.Common.Contracts.Excel;

namespace DimensionsHelper.Services.Excel;

public static class ExcelStyleColors
{

    private static ExcelStyleColor FromColor(Color color)
    {
        return new ExcelStyleColor(color.R, color.G, color.B);
    }

    // Black
    public static ExcelStyleColor Black => FromColor(Color.Black);

    // White
    public static ExcelStyleColor White => FromColor(Color.White);

    // Red
    public static ExcelStyleColor Red => FromColor(Color.Red);

    // Green
    public static ExcelStyleColor Green => FromColor(Color.Green);

    // Blue
    public static ExcelStyleColor Blue => FromColor(Color.Blue);

    // Gray
    public static ExcelStyleColor Gray => FromColor(Color.Gray);

    // LightGray
    public static ExcelStyleColor LightGray => FromColor(Color.LightGray);

    // DarkBlue
    public static ExcelStyleColor DarkBlue => FromColor(Color.DarkBlue);

    public static ExcelStyleColor AliceBlue => FromColor(Color.AliceBlue);

    public static ExcelStyleColor Orange => FromColor(Color.Orange);

    public static ExcelStyleColor LightCoral => FromColor(Color.LightCoral);

    public static ExcelStyleColor LightCyan => FromColor(Color.LightCyan);

    public static ExcelStyleColor LightGreen => FromColor(Color.LightGreen);

    public static ExcelStyleColor LightYellow => FromColor(Color.LightYellow);

    public static ExcelStyleColor LightSalmon => FromColor(Color.LightSalmon);

    public static ExcelStyleColor LightSeaGreen => FromColor(Color.LightSeaGreen);

    public static ExcelStyleColor LightSteelBlue => FromColor(Color.LightSteelBlue);

    public static ExcelStyleColor LightSkyBlue => FromColor(Color.LightSkyBlue);

    public static ExcelStyleColor LightPink => FromColor(Color.LightPink);

    public static ExcelStyleColor LightGoldenrodYellow => FromColor(Color.LightGoldenrodYellow);

    public static ExcelStyleColor DarkOrange => FromColor(Color.DarkOrange);
    
    public static ExcelStyleColor DarkGreen => FromColor(Color.DarkGreen);

    public static ExcelStyleColor DarkCyan => FromColor(Color.DarkCyan);

    public static ExcelStyleColor DarkRed => FromColor(Color.DarkRed);
    
    public static ExcelStyleColor DarkOrchid => FromColor(Color.DarkOrchid);
    
    public static ExcelStyleColor DarkMagenta => FromColor(Color.DarkMagenta);
    
    public static ExcelStyleColor DarkKhaki => FromColor(Color.DarkKhaki);

}